package realQuestion.tuan;

import java.util.Scanner;

public class Test2 {
//    public    int   judge(int[] nums,int x,int y){
//        int length = nums.length;
//        int[] xunhuan = new int[length * 2];
//        for (int i = 0; i < nums.length; i++) {
//           xunhuan[i]=nums[i%length];
//        }
//        if (Math.abs(x-y)==1){
//            return nums[x-1];
//        }
//
//        int sum1 = 0,sum2=0;
//        for (int i = x-1; i < y-1; i++) {
//            sum1+=nums[i];
//        }
//        for (int i = y-1; i <y-1+Math.abs(x-y) ; i++) {
//            sum2+=xunhuan[i];
//        }
//
//        return  Math.min(sum1,sum2);
//
//    }
//
//    public static void main(String[] args) {
//            Scanner in  = new Scanner(System.in);
//
//            int n = in.nextInt();
//            int[] nums = new int[n];
//
//            for (int i = 0; i < n; i++) {
//                nums[i]=in.nextInt();
//            }
//
//            int x=in.nextInt();
//            int y=in.nextInt();
//
//            Test2 test2 = new Test2();
//        System.out.println(test2.judge(nums, x, y));
//    }

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int[] a = new int[n+1];
        for (int i = 1; i <= n; i++) {
            a[i] = sc.nextInt(); //
        }
        int x = sc.nextInt();
        int y = sc.nextInt();
        long tmp2 = 0;
        int f = x;
        while (f != y) {
            tmp2 += a[f];
            f = (f+1)%(n+1);
            if (f == 0) f = 1;
        }
        long tmp1 = 0;
        f = x;
        while (f != y) {
            if (f > 1)tmp1 += a[f-1];
            else tmp1 += a[n];
            f = (f-1);
            if (f == 0) f = n;
        }
        System.out.println(Math.min(tmp1,tmp2));
    }

}
